#ifndef POSTWIDGETELEMENT_H
#define POSTWIDGETELEMENT_H

#include <QString>
#include <QColor>
#include <QPixmap>
#include <QFont>
#include <QRect>
#include <QSharedPointer>

class PostWidgetElement
{
public:
	PostWidgetElement(int id, const QRect& r, const QString& text = QString());
	virtual ~PostWidgetElement();

	void setText(const QString& t);
	QString text() const;

	void setTooltip(const QString& t);
	QString tooltip() const;

	void setNormalColor(const QColor& c);
	QColor normalColor() const;

	void setHoverColor(const QColor& c);
	QColor hoverColor() const;

	void setRect(const QRect& r);
	QRect rect() const;

	void setPixmap(const QPixmap& p);
	QPixmap pixmap() const;

	void setFont(const QFont& f);
	QFont font() const;

	int id();

private:
	QString m_text;
	QString m_tooltip;
	QColor m_normal;
	QColor m_hover;
	QRect m_rect;
	QPixmap m_pixmap;
	QFont m_font;
	int m_id;
};

typedef QSharedPointer<PostWidgetElement> PostWidgetElementPtr;

#endif // POSTWIDGETELEMENT_H
